package com.boatAnchorAssistant.service.service.in;

import nirvana.core.domains.vo.PageResult;
import com.boatAnchorAssistant.pojo.param.userCollect.*;
import com.boatAnchorAssistant.pojo.vo.userCollect.*;

import java.util.List;


/**
 * 【描 述】：我的收藏服务
 * 【环 境】：J2SE
 * 【详 细】：
 */
public interface UserCollectService {

    /**
     * 创建我的收藏
     *
     * @param param
     */
    void createUserCollect(CreateUserCollectParam param);

    /**
     * 修改我的收藏
     *
     * @param param
     */
    void editUserCollect(EditUserCollectParam param);

    /**
     * 移除我的收藏
     *
     * @param id
     */
    void removeUserCollect(Long id);

    /**
     * 启动/禁用我的收藏
     *
     * @param id
     */
    void enabledUserCollect(Long id);

    /**
     * 切换收藏
     * @param deviceId
     */
    void switchUserCollect(Long deviceId);

    /**
     * 获取我的收藏列表
     *
     * @param param
     * @return
     */
    PageResult<GetUserCollectListVo> getUserCollectList(GetUserCollectListParam param);


    /**
     * 获取我的收藏下拉列表
     *
     * @param param
     * @return
     */
    List<GetUserCollectDownListVo> getUserCollectDownList(GetUserCollectDownListParam param);


}